﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using ITCR.ProyectoAgricola.Datos;
using ITCR.ProyectoAgricola.Base;
using ITCR.ProyectoAgricola.Negocios;
using System.Threading;
using System.Data;
using System.Data.SqlTypes;
using System.Data.SqlClient;


namespace ITCR.ProyectoAgricola.Interfaz
{
    public partial class formularioImplementacionEquipamiento : System.Web.UI.Page
    {
        //variables que se pasan entre paginas del formulario
        public string valorIdConsecutivo;
        public string valorUser;
        public string valorIdEmpresa;

        //variables de error en el ingreso de datos textuales, campos Nombre de la Empresa, dias de entrega, otro en el perfil
        bool vOtroImplementacionError = false;
        bool vOtroEquipamientoError = false;

        int vCheckOtro = 0;
        string vTextOtro;

        string idActual;
        bool existeInfoImplementacion = false;
        bool existeInfoEquipamiento = false;

        string banderaImplementacion = "false";

        cEMPRESABase listaEmpresas = new cEMPRESABase();
        DataTable dataTableEmpresas = new DataTable();


        protected void Page_Load(object sender, EventArgs e)
        {
            //valorUser = Convert.ToString(Request.QueryString["userName"]);
            valorUser = (string)Session["userName"];
            LabelNombreUsuarioFormulario.Text = valorUser;
            valorIdConsecutivo = (string)Session["consecutivoSesion"];
            
            //Response.Write("<script>alert('Consecutivo " + valorIdConsecutivo + "'); </script>");

            cEMPRESABase todasEmpresas = new cEMPRESABase();
            DataTable tablaEmpresas = new DataTable();
            tablaEmpresas = todasEmpresas.SeleccionarTodos();
            string codigoConsecutivo = "CE-" + valorIdConsecutivo;

            for (int i = 0; i < tablaEmpresas.Rows.Count; i++)
            {
                if (tablaEmpresas.Rows[i][1].Equals(codigoConsecutivo))
                {
                    valorIdEmpresa = tablaEmpresas.Rows[i][0].ToString();
                }
            }


            cIMPLEMENTACIONBase implementacion = new cIMPLEMENTACIONBase();
            DataTable tablaImplementacion = new DataTable();
            tablaImplementacion = implementacion.SeleccionarTodos();

            for (int i = 0; i < tablaImplementacion.Rows.Count; i++)
            {
                if (tablaImplementacion.Rows[i][1].ToString().Equals(valorIdEmpresa))
                {
                    Session["banderaImplementacion"] = true;
                }
            }

            if (!IsPostBack)
            {
                if ((bool)Session["banderaImplementacion"] == true)
                {

                    //int idEmpresa = (int)Session["idEmpresaRegistrada"];
                    int idEmpresa = int.Parse(valorIdEmpresa);

                    LabelNombreUsuarioFormulario.Text = valorUser;

                    //Se carga IMPLEMENTACION existente de una empresa
                    cIMPLEMENTACIONBase cargarImplementacionExistente = new cIMPLEMENTACIONBase();
                    DataTable implementos = new DataTable();
                    implementos = cargarImplementacionExistente.SeleccionarTodos();

                    CheckboxOtroImplementacion.Checked = false;

                    for (int i = 0; i < implementos.Rows.Count; i++)
                    {
                        if (implementos.Rows[i][1].Equals(idEmpresa))
                        {
                            cargarImplementacionExistente.IdImplementacion = int.Parse(implementos.Rows[i][0].ToString());
                            existeInfoImplementacion = true;
                        }
                    }
                    
                    cargarImplementacionExistente.SeleccionarUno();

                    if (!cargarImplementacionExistente.IdEmpresa.IsNull)
                    {
                        if (existeInfoImplementacion.Equals(true))
                        {
                            if (cargarImplementacionExistente.AlmacenesFiscales == 1)
                            {
                                CheckboxAlmacenesFiscales.Checked = true;
                            }
                            else { CheckboxAlmacenesFiscales.Checked = false; }

                            if (cargarImplementacionExistente.Construccion == 1)
                            {
                                CheckboxConstruccion.Checked = true;
                            }
                            else { CheckboxConstruccion.Checked = false; }

                            if (cargarImplementacionExistente.MovimientoTierrasCanalizacion == 1)
                            {
                                CheckboxMovimientoTierrasCanalizacion.Checked = true;
                            }
                            else { CheckboxMovimientoTierrasCanalizacion.Checked = false; }

                            if (cargarImplementacionExistente.Permisos == 1)
                            {
                                CheckboxPermisos.Checked = true;
                            }
                            else { CheckboxPermisos.Checked = false; }

                            if (cargarImplementacionExistente.Topografia == 1)
                            {
                                CheckboxTopografia.Checked = true;
                            }
                            else { CheckboxTopografia.Checked = false; }

                            if (cargarImplementacionExistente.Transporte == 1)
                            {
                                CheckboxTransporte.Checked = true;
                            }
                            else { CheckboxTransporte.Checked = false; }

                            if (cargarImplementacionExistente.Otro.ToString() != "0")
                            {
                                if (cargarImplementacionExistente.Otro.ToString().Equals("Null"))
                                {
                                    //No exite un valor
                                }
                                else
                                {
                                    CheckboxOtroImplementacion.Checked = true;
                                    TextboxOtroImplementacion.Text = cargarImplementacionExistente.Otro.ToString();
                                }
                            }
                            else { CheckboxOtroImplementacion.Checked = false; }
                        }

                        //Se carga EQUIPAMIENTO principal existente de una empresa
                        cEQUIPAMIENTOBase cargarEquipamientoExistente = new cEQUIPAMIENTOBase();
                        DataTable equipamiento = new DataTable();
                        equipamiento = cargarEquipamientoExistente.SeleccionarTodos();

                        CheckboxOtroEquipamiento.Checked = false;

                        for (int i = 0; i < equipamiento.Rows.Count; i++)
                        {

                            if (equipamiento.Rows[i][1].Equals(idEmpresa))
                            {
                                cargarEquipamientoExistente.IdEmpresa = idEmpresa;
                                cargarEquipamientoExistente.IdEquipamiento = int.Parse(equipamiento.Rows[i][0].ToString());
                                existeInfoEquipamiento = true;
                            }
                        }

                        if (existeInfoEquipamiento.Equals(true))
                        {
                            cargarEquipamientoExistente.SeleccionarUno();

                            if (!cargarEquipamientoExistente.IdEmpresa.IsNull)
                            {
                                if (cargarEquipamientoExistente.AbanicosVentiladores == 1)
                                {
                                    CheckboxAbanicosVentiladores.Checked = true;
                                }
                                else { CheckboxAbanicosVentiladores.Checked = false; }

                                if (cargarEquipamientoExistente.Anclajes == 1)
                                {
                                    CheckboxAnclajesSimilares.Checked = true;
                                }
                                else { CheckboxAnclajesSimilares.Checked = false; }

                                if (cargarEquipamientoExistente.CablesTensoresSoporte == 1)
                                {
                                    CheckboxCablesTensoresSoporte.Checked = true;
                                }
                                else { CheckboxCablesTensoresSoporte.Checked = false; }

                                if (cargarEquipamientoExistente.CanaletasMesas == 1)
                                {
                                    CheckboxCanaletasMacetasCultivo.Checked = true;
                                }
                                else { CheckboxCanaletasMacetasCultivo.Checked = false; }

                                if (cargarEquipamientoExistente.CobertoresPiso == 1)
                                {
                                    CheckboxCobertoresPiso.Checked = true;
                                }
                                else { CheckboxCobertoresPiso.Checked = false; }

                                if (cargarEquipamientoExistente.ComputoEspecifico == 1)
                                {
                                    CheckboxComputoProgramasEspecializados.Checked = true;
                                }
                                else { CheckboxComputoProgramasEspecializados.Checked = false; }

                                if (cargarEquipamientoExistente.EmosoresCO2 == 1)
                                {
                                    CheckboxEmisoresCO2.Checked = true;
                                }
                                else { CheckboxEmisoresCO2.Checked = false; }

                                if (cargarEquipamientoExistente.EstacionesMeteorologicas == 1)
                                {
                                    CheckboxEstacionesMeteorologicas.Checked = true;
                                }
                                else { CheckboxEstacionesMeteorologicas.Checked = false; }

                                if (cargarEquipamientoExistente.EstructurasSoporteCultivo == 1)
                                {
                                    CheckboxEstructuraSoporteCultivos.Checked = true;
                                }
                                else { CheckboxEstructuraSoporteCultivos.Checked = false; }

                                if (cargarEquipamientoExistente.Geomembranas == 1)
                                {
                                    CheckboxGeomembranas.Checked = true;
                                }
                                else { CheckboxGeomembranas.Checked = false; }

                                if (cargarEquipamientoExistente.HumedecimientoAmbiente == 1)
                                {
                                    CheckboxHumedecimientoAmbiente.Checked = true;
                                }
                                else { CheckboxHumedecimientoAmbiente.Checked = false; }

                                if (cargarEquipamientoExistente.IluminacionInterna == 1)
                                {
                                    CheckboxIluminacionInterna.Checked = true;
                                }
                                else { CheckboxIluminacionInterna.Checked = false; }

                                if (cargarEquipamientoExistente.MotoresBarrasTransmision == 1)
                                {
                                    CheckboxMotoresBarrasTransmision.Checked = true;
                                }
                                else { CheckboxMotoresBarrasTransmision.Checked = false; }

                                if (cargarEquipamientoExistente.Nebulizadores == 1)
                                {
                                    CheckboxNebulizadores.Checked = true;
                                }
                                else { CheckboxNebulizadores.Checked = false; }

                                if (cargarEquipamientoExistente.EquipoCientificoEspecializado == 1)
                                {
                                    CheckboxOtroEquipoCientificoEspecializado.Checked = true;
                                }
                                else { CheckboxOtroEquipoCientificoEspecializado.Checked = false; }

                                if (cargarEquipamientoExistente.SugetadoresCerramiento == 1)
                                {
                                    CheckboxSujetadoresMaterialesCerramiento.Checked = true;
                                }
                                else { CheckboxSujetadoresMaterialesCerramiento.Checked = false; }

                                if (cargarEquipamientoExistente.TanquesAgua == 1)
                                {
                                    CheckboxTanquesReservoriosAgua.Checked = true;
                                }
                                else { CheckboxTanquesReservoriosAgua.Checked = false; }

                                if (cargarEquipamientoExistente.Otro.ToString() != "0")
                                {
                                    if (cargarEquipamientoExistente.Otro.ToString().Equals("Null"))
                                    {
                                        //No exite un valor
                                    }
                                    else
                                    {
                                        CheckboxOtroEquipamiento.Checked = true;
                                        TextboxOtroEquipamiento.Text = cargarEquipamientoExistente.Otro.ToString();
                                    }
                                }
                                else { CheckboxOtroEquipamiento.Checked = false; }
                            }


                            //Cargar demas tablas de Equipamiento que existen de la empresa
                            if (!cargarEquipamientoExistente.IdEquipamiento.IsNull)
                            {

                                cEQUIPAMIENTOBANDEJABase cargarEquipamientoBandejaExistente = new cEQUIPAMIENTOBANDEJABase();
                                cargarEquipamientoBandejaExistente.IdEquipamiento = cargarEquipamientoExistente.IdEquipamiento;
                                cargarEquipamientoBandejaExistente.SeleccionarUno();

                                if (cargarEquipamientoBandejaExistente.BandejaCultivo == 1)
                                {
                                    CheckboxBandejaCultivo.Checked = true;
                                }
                                else { CheckboxBandejaCultivo.Checked = false; }

                                /*if (cargarEquipamientoBandejaExistente.BandejaMaceta == 1)
                                {
                                    CheckboxBandejasMacetasSimilares.Checked = true;
                                }
                                else { CheckboxBandejasMacetasSimilares.Checked = false; }

                                */
                                cEQUIPAMIENTOEQUIPOBase cargarEquipamientoEquipoExistente = new cEQUIPAMIENTOEQUIPOBase();
                                cargarEquipamientoEquipoExistente.IdEquipamiento = cargarEquipamientoExistente.IdEquipamiento;
                                cargarEquipamientoEquipoExistente.SeleccionarUno();

                                if (cargarEquipamientoEquipoExistente.EquipoBondeoAgua == 1)
                                {
                                    CheckboxEquiposBombeoAgua.Checked = true;
                                }
                                else { CheckboxEquiposBombeoAgua.Checked = false; }

                                if (cargarEquipamientoEquipoExistente.EquipoControlAutomatismos == 1)
                                {
                                    CheckboxEquiposControlAutomatismos.Checked = true;
                                }
                                else { CheckboxEquiposControlAutomatismos.Checked = false; }

                                if (cargarEquipamientoEquipoExistente.EquipoMonitoreoAguaAire == 1)
                                {
                                    CheckboxEquiposMonitoreoAguaAire.Checked = true;
                                }
                                else { CheckboxEquiposMonitoreoAguaAire.Checked = false; }

                                if (cargarEquipamientoEquipoExistente.EquipoMonitoreoPlagas == 1)
                                {
                                    CheckboxEquiposMonitoreoControlPlagas.Checked = true;
                                }
                                else { CheckboxEquiposMonitoreoControlPlagas.Checked = false; }

                                if (cargarEquipamientoEquipoExistente.EquipoSaludSeguridadOcupacional == 1)
                                {
                                    CheckboxEquiposSaludSeguridadOcupacionel.Checked = true;
                                }
                                else { CheckboxEquiposSaludSeguridadOcupacionel.Checked = false; }

                                if (cargarEquipamientoEquipoExistente.EquipoPortatiles == 1)
                                {
                                    CheckboxEquiposPortatilesVariablesAmbientales.Checked = true;
                                }
                                else { CheckboxEquiposPortatilesVariablesAmbientales.Checked = false; }

                                if (cargarEquipamientoEquipoExistente.EquipoPoscosecha == 1)
                                {
                                    CheckboxEquiposPoscosechaGestionCalidad.Checked = true;
                                }
                                else { CheckboxEquiposPoscosechaGestionCalidad.Checked = false; }

                                if (cargarEquipamientoEquipoExistente.EquipoRiegoFertiIrrigacion == 1)
                                {
                                    CheckboxEquiposSuministrosRiegoFertiIrrigacion.Checked = true;
                                }
                                else { CheckboxEquiposSuministrosRiegoFertiIrrigacion.Checked = false; }

                                cEQUIPAMIENTOMALLABase cargarEquipamientoMallaExistente = new cEQUIPAMIENTOMALLABase();
                                cargarEquipamientoMallaExistente.IdEquipamiento = cargarEquipamientoExistente.IdEquipamiento;
                                cargarEquipamientoMallaExistente.SeleccionarUno();

                                if (cargarEquipamientoMallaExistente.MallasAntiAves == 1)
                                {
                                    CheckboxMallaAntiAve.Checked = true;
                                }
                                else { CheckboxMallaAntiAve.Checked = false; }

                                if (cargarEquipamientoMallaExistente.MallasAntiInsectos == 1)
                                {
                                    CheckboxMallaAntiInsecto.Checked = true;
                                }
                                else { CheckboxMallaAntiInsecto.Checked = false; }

                                if (cargarEquipamientoMallaExistente.MallasSombreo == 1)
                                {
                                    CheckboxMallaSombreo.Checked = true;
                                }
                                else { CheckboxMallaSombreo.Checked = false; }


                                cEQUIPAMIENTOMATERIALBase cargarEquipamientoMaterialExistente = new cEQUIPAMIENTOMATERIALBase();
                                cargarEquipamientoMaterialExistente.IdEquipamiento = cargarEquipamientoExistente.IdEquipamiento;
                                cargarEquipamientoMaterialExistente.SeleccionarUno();

                                if (cargarEquipamientoMaterialExistente.MaterialesMadera == 1)
                                {
                                    CheckboxMaterialesConstruccion.Checked = true;
                                }
                                else { CheckboxMaterialesConstruccion.Checked = false; }

                                if (cargarEquipamientoMaterialExistente.MaterialesMetal == 1)
                                {
                                    Checkbox1MaterialesConstruccion1.Checked = true;
                                }
                                else { Checkbox1MaterialesConstruccion1.Checked = false; }


                                cEQUIPAMIENTOPANTALLABase cargarEquipamientoPantallaExistente = new cEQUIPAMIENTOPANTALLABase();
                                cargarEquipamientoPantallaExistente.IdEquipamiento = cargarEquipamientoExistente.IdEquipamiento;
                                cargarEquipamientoPantallaExistente.SeleccionarUno();

                                if (cargarEquipamientoPantallaExistente.PantallasCortaViento == 1)
                                {
                                    CheckboxPantallasCortaVientos.Checked = true;
                                }
                                else { CheckboxPantallasCortaVientos.Checked = false; }

                                if (cargarEquipamientoPantallaExistente.PantallasReflectivasRefractivas == 1)
                                {
                                    CheckboxPantallasReflectivasRefractivas.Checked = true;
                                }
                                else { CheckboxPantallasReflectivasRefractivas.Checked = false; }


                                cEQUIPAMIENTOPLASTICOBase cargarEquipamientoPlasticoExistente = new cEQUIPAMIENTOPLASTICOBase();
                                cargarEquipamientoPlasticoExistente.IdEquipamiento = cargarEquipamientoExistente.IdEquipamiento;
                                cargarEquipamientoPlasticoExistente.SeleccionarUno();

                                if (cargarEquipamientoPlasticoExistente.PlasticosClaros == 1)
                                {
                                    CheckboxPlasticosClaros.Checked = true;
                                }
                                else { CheckboxPlasticosClaros.Checked = false; }

                                if (cargarEquipamientoPlasticoExistente.PlasticosPigmentados == 1)
                                {
                                    CheckboxPlasticosPigmentados.Checked = true;
                                }
                                else { CheckboxPlasticosPigmentados.Checked = false; }


                                cEQUIPAMIENTOSISTEMABase cargarEquipamientoSistemaExistente = new cEQUIPAMIENTOSISTEMABase();
                                cargarEquipamientoSistemaExistente.IdEquipamiento = cargarEquipamientoExistente.IdEquipamiento;
                                cargarEquipamientoSistemaExistente.SeleccionarUno();

                                if (cargarEquipamientoSistemaExistente.SistemaRecirculacionSoluciones == 1)
                                {
                                    CheckboxSistemasRecirculacionSoluciones.Checked = true;
                                }
                                else { CheckboxSistemasRecirculacionSoluciones.Checked = false; }

                                if (cargarEquipamientoSistemaExistente.SistemasCalefaccionRefrigeracion == 1)
                                {
                                    CheckboxSistemasCalefaccionRefrigeracionInvernadero.Checked = true;
                                }
                                else { CheckboxSistemasCalefaccionRefrigeracionInvernadero.Checked = false; }
                            }
                        }
                    }
                }
            }
        }




        protected void ButtonEnviarImplementacionEquipamiento_Click(object sender, EventArgs e)
        {
            guardarActualizarInformacion();
            Response.RedirectPermanent("formularioProduccionPoscosecha.aspx");
        }
        
        protected void ButtonAtrasImplementacionEquipamiento_Click(object sender, EventArgs e)
        {
            guardarActualizarInformacion();
            valorIdConsecutivo = (string)Session["consecutivoSesion"];
            valorUser = (string)Session["userName"];
            Response.RedirectPermanent("formularioInsumosServicios.aspx");
        }


        protected void ButtonCatalogoP_Click(object sender, EventArgs e)
        {
            guardarActualizarInformacion();
            Response.RedirectPermanent("catalogoInicio.aspx");

        }

        protected void ButtonHome_Click(object sender, EventArgs e)
        {
            guardarActualizarInformacion();
            Response.RedirectPermanent("Default.aspx");
        }



        protected void guardarActualizarInformacion()
        {
            valorIdConsecutivo = (string)Session["consecutivoSesion"];
            valorUser = (string)Session["userName"];


            dataTableEmpresas = listaEmpresas.SeleccionarTodos();
            string consecutivo = "CE-" + valorIdConsecutivo;

            for (int i = 0; i < dataTableEmpresas.Rows.Count; i++)
            {
                if (dataTableEmpresas.Rows[i][1].Equals(consecutivo))
                {
                    idActual = dataTableEmpresas.Rows[i][0].ToString();
                }
            }


            //INSTANCIAS
            cIMPLEMENTACIONBase nuevaImplementacion = new cIMPLEMENTACIONBase();
            cEQUIPAMIENTOBase nuevoEquipamiento = new cEQUIPAMIENTOBase();
            cEQUIPAMIENTOBANDEJABase nuevoEquipamientoBandeja = new cEQUIPAMIENTOBANDEJABase();
            cEQUIPAMIENTOEQUIPOBase nuevoEquipamientoEquipo = new cEQUIPAMIENTOEQUIPOBase();
            cEQUIPAMIENTOMALLABase nuevoEquipamientoMalla = new cEQUIPAMIENTOMALLABase();
            cEQUIPAMIENTOMATERIALBase nuevoEquipamientoMaterial = new cEQUIPAMIENTOMATERIALBase();
            cEQUIPAMIENTOPANTALLABase nuevoEquipamientoPantalla = new cEQUIPAMIENTOPANTALLABase();
            cEQUIPAMIENTOPLASTICOBase nuevoEquipamientoPlastico = new cEQUIPAMIENTOPLASTICOBase();
            cEQUIPAMIENTOSISTEMABase nuevoEquipamientoSistema = new cEQUIPAMIENTOSISTEMABase();

            //Asignacion de variables para implementacion
            nuevaImplementacion.IdEmpresa = Int32.Parse(idActual);

            if (CheckboxAlmacenesFiscales.Checked == true)
            {
                nuevaImplementacion.AlmacenesFiscales = 1;
            }
            else { nuevaImplementacion.AlmacenesFiscales = 0; }

            if (CheckboxConstruccion.Checked == true)
            {
                nuevaImplementacion.Construccion = 1;
            }
            else { nuevaImplementacion.Construccion = 0; }

            if (CheckboxMovimientoTierrasCanalizacion.Checked == true)
            {
                nuevaImplementacion.MovimientoTierrasCanalizacion = 1;
            }
            else { nuevaImplementacion.MovimientoTierrasCanalizacion = 0; }

            if (CheckboxPermisos.Checked == true)
            {
                nuevaImplementacion.Permisos = 1;
            }
            else { nuevaImplementacion.Permisos = 0; }

            if (CheckboxTopografia.Checked == true)
            {
                nuevaImplementacion.Topografia = 1;
            }
            else { nuevaImplementacion.Topografia = 0; }

            if (CheckboxTransporte.Checked == true)
            {
                nuevaImplementacion.Transporte = 1;
            }
            else { nuevaImplementacion.Transporte = 0; }


            if (CheckboxOtroImplementacion.Checked.Equals(true))
            {

                vCheckOtro = 1;

                if (TextboxOtroImplementacion.Text.Equals(""))
                {
                    vOtroImplementacionError = true;
                    Response.Write("<script>alert('Especifique el dato para la opción Otro en Implementación');</script>");
                }
                else { vTextOtro = TextboxOtroImplementacion.Text.ToString(); }
            }
            else
            {

                if (TextboxOtroImplementacion.Text != "")
                {
                    vTextOtro = TextboxOtroImplementacion.Text.ToString();
                }
                else
                { vTextOtro = "0"; }
            }

            nuevaImplementacion.Otro = vTextOtro;


            //Se ACTUALIZA la informacion de una empresa existente
            if ((bool)Session["banderaImplementacion"] == true)
            {
                //int idEmpresa = (int)Session["idEmpresaRegistrada"];
                int idEmpresa = int.Parse(valorIdEmpresa);


                //ACTUALIZAR IMPLEMENTACION
                cIMPLEMENTACIONBase implementacion = new cIMPLEMENTACIONBase();
                implementacion.IdEmpresa = idEmpresa;
                implementacion.SeleccionarUnoConIdentificadorEmpresa();

                if (vOtroImplementacionError)
                {
                }
                else
                {
                    nuevaImplementacion.IdImplementacion = implementacion.IdImplementacion;
                    nuevaImplementacion.Actualizar();
                    vOtroImplementacionError = false;
                }


                //ACTUALIZAR EQUIPAMIENTO
                cEQUIPAMIENTOBase equipamiento = new cEQUIPAMIENTOBase();
                equipamiento.IdEmpresa = idEmpresa;
                equipamiento.SeleccionarUnoConIdentificadorEmpresa();

                nuevoEquipamiento.IdEmpresa = Int32.Parse(idActual);
                nuevoEquipamiento.IdEquipamiento = equipamiento.IdEquipamiento;

                if (CheckboxAbanicosVentiladores.Checked == true)
                {
                    nuevoEquipamiento.AbanicosVentiladores = 1;
                }
                else { nuevoEquipamiento.AbanicosVentiladores = 0; }

                if (CheckboxAnclajesSimilares.Checked == true)
                {
                    nuevoEquipamiento.Anclajes = 1;
                }
                else { nuevoEquipamiento.Anclajes = 0; }

                if (CheckboxCablesTensoresSoporte.Checked == true)
                {
                    nuevoEquipamiento.CablesTensoresSoporte = 1;
                }
                else { nuevoEquipamiento.CablesTensoresSoporte = 0; }

                if (CheckboxCanaletasMacetasCultivo.Checked == true)
                {
                    nuevoEquipamiento.CanaletasMesas = 1;
                }
                else { nuevoEquipamiento.CanaletasMesas = 0; }

                if (CheckboxCobertoresPiso.Checked == true)
                {
                    nuevoEquipamiento.CobertoresPiso = 1;
                }
                else { nuevoEquipamiento.CobertoresPiso = 0; }

                if (CheckboxComputoProgramasEspecializados.Checked == true)
                {
                    nuevoEquipamiento.ComputoEspecifico = 1;
                }
                else { nuevoEquipamiento.ComputoEspecifico = 0; }

                if (CheckboxEmisoresCO2.Checked == true)
                {
                    nuevoEquipamiento.EmosoresCO2 = 1;
                }
                else { nuevoEquipamiento.EmosoresCO2 = 0; }

                if (CheckboxEstacionesMeteorologicas.Checked == true)
                {
                    nuevoEquipamiento.EstacionesMeteorologicas = 1;
                }
                else { nuevoEquipamiento.EstacionesMeteorologicas = 0; }

                if (CheckboxEstructuraSoporteCultivos.Checked == true)
                {
                    nuevoEquipamiento.EstructurasSoporteCultivo = 1;
                }
                else { nuevoEquipamiento.EstructurasSoporteCultivo = 0; }

                if (CheckboxGeomembranas.Checked == true)
                {
                    nuevoEquipamiento.Geomembranas = 1;
                }
                else { nuevoEquipamiento.Geomembranas = 0; }

                if (CheckboxHumedecimientoAmbiente.Checked == true)
                {
                    nuevoEquipamiento.HumedecimientoAmbiente = 1;
                }
                else { nuevoEquipamiento.HumedecimientoAmbiente = 0; }

                if (CheckboxIluminacionInterna.Checked == true)
                {
                    nuevoEquipamiento.IluminacionInterna = 1;
                }
                else { nuevoEquipamiento.IluminacionInterna = 0; }

                if (CheckboxMotoresBarrasTransmision.Checked == true)
                {
                    nuevoEquipamiento.MotoresBarrasTransmision = 1;
                }
                else { nuevoEquipamiento.MotoresBarrasTransmision = 0; }

                if (CheckboxNebulizadores.Checked == true)
                {
                    nuevoEquipamiento.Nebulizadores = 1;
                }
                else { nuevoEquipamiento.Nebulizadores = 0; }

                if (CheckboxOtroEquipoCientificoEspecializado.Checked == true)
                {
                    nuevoEquipamiento.EquipoCientificoEspecializado = 1;
                }
                else { nuevoEquipamiento.EquipoCientificoEspecializado = 0; }

                if (CheckboxSujetadoresMaterialesCerramiento.Checked == true)
                {
                    nuevoEquipamiento.SugetadoresCerramiento = 1;
                }
                else { nuevoEquipamiento.SugetadoresCerramiento = 0; }

                if (CheckboxTanquesReservoriosAgua.Checked == true)
                {
                    nuevoEquipamiento.TanquesAgua = 1;
                }
                else { nuevoEquipamiento.TanquesAgua = 0; }

                if (CheckboxOtroEquipamiento.Checked == true)
                {

                    if (TextboxOtroEquipamiento.Text.Equals(""))
                    {
                        vOtroEquipamientoError = true;
                        Response.Write("<script>alert('Especifique el dato para la opción Otro en Equipamiento');</script>");
                    }
                    else { nuevoEquipamiento.Otro = TextboxOtroEquipamiento.Text.ToString(); }
                }
                else
                {
                    if (TextboxOtroEquipamiento.Text != "")
                    {
                        nuevoEquipamiento.Otro = TextboxOtroEquipamiento.Text.ToString();
                    }
                    else
                    { nuevoEquipamiento.Otro = "0"; }
                }


                //Actualizar
                if (vOtroEquipamientoError)
                {
                }
                else
                {
                    //nuevoEquipamiento.IdEmpresa = idEmpresa;
                    nuevoEquipamiento.Actualizar();

                    nuevoEquipamientoBandeja.IdEquipamiento = nuevoEquipamiento.IdEquipamiento;

                    if (CheckboxBandejaCultivo.Checked == true)
                    {
                        nuevoEquipamientoBandeja.BandejaCultivo = 1;
                    }
                    else { nuevoEquipamientoBandeja.BandejaCultivo = 0; }

                    nuevoEquipamientoEquipo.IdEquipamiento = nuevoEquipamiento.IdEquipamiento;

                    if (CheckboxEquiposBombeoAgua.Checked == true)
                    {
                        nuevoEquipamientoEquipo.EquipoBondeoAgua = 1;
                    }
                    else { nuevoEquipamientoEquipo.EquipoBondeoAgua = 0; }

                    if (CheckboxEquiposControlAutomatismos.Checked == true)
                    {
                        nuevoEquipamientoEquipo.EquipoControlAutomatismos = 1;
                    }
                    else { nuevoEquipamientoEquipo.EquipoControlAutomatismos = 0; }

                    if (CheckboxEquiposMonitoreoAguaAire.Checked == true)
                    {
                        nuevoEquipamientoEquipo.EquipoMonitoreoAguaAire = 1;
                    }
                    else { nuevoEquipamientoEquipo.EquipoMonitoreoAguaAire = 0; }

                    if (CheckboxEquiposMonitoreoControlPlagas.Checked == true)
                    {
                        nuevoEquipamientoEquipo.EquipoMonitoreoPlagas = 1;
                    }
                    else { nuevoEquipamientoEquipo.EquipoMonitoreoPlagas = 0; }

                    if (CheckboxEquiposSaludSeguridadOcupacionel.Checked == true)
                    {
                        nuevoEquipamientoEquipo.EquipoSaludSeguridadOcupacional = 1;
                    }
                    else { nuevoEquipamientoEquipo.EquipoSaludSeguridadOcupacional = 0; }

                    if (CheckboxEquiposPortatilesVariablesAmbientales.Checked == true)
                    {
                        nuevoEquipamientoEquipo.EquipoPortatiles = 1;
                    }
                    else { nuevoEquipamientoEquipo.EquipoPortatiles = 0; }

                    if (CheckboxEquiposPoscosechaGestionCalidad.Checked == true)
                    {
                        nuevoEquipamientoEquipo.EquipoPoscosecha = 1;
                    }
                    else { nuevoEquipamientoEquipo.EquipoPoscosecha = 0; }

                    if (CheckboxEquiposSuministrosRiegoFertiIrrigacion.Checked == true)
                    {
                        nuevoEquipamientoEquipo.EquipoRiegoFertiIrrigacion = 1;
                    }
                    else { nuevoEquipamientoEquipo.EquipoRiegoFertiIrrigacion = 0; }


                    nuevoEquipamientoMalla.IdEquipamiento = nuevoEquipamiento.IdEquipamiento;

                    if (CheckboxMallaAntiAve.Checked == true)
                    {
                        nuevoEquipamientoMalla.MallasAntiAves = 1;
                    }
                    else { nuevoEquipamientoMalla.MallasAntiAves = 0; }

                    if (CheckboxMallaAntiInsecto.Checked == true)
                    {
                        nuevoEquipamientoMalla.MallasAntiInsectos = 1;
                    }
                    else { nuevoEquipamientoMalla.MallasAntiInsectos = 0; }

                    if (CheckboxMallaSombreo.Checked == true)
                    {
                        nuevoEquipamientoMalla.MallasSombreo = 1;
                    }
                    else { nuevoEquipamientoMalla.MallasSombreo = 0; }


                    nuevoEquipamientoMaterial.IdEquipamiento = nuevoEquipamiento.IdEquipamiento;

                    if (CheckboxMaterialesConstruccion.Checked == true)
                    {
                        nuevoEquipamientoMaterial.MaterialesMadera = 1;
                    }
                    else { nuevoEquipamientoMaterial.MaterialesMadera = 0; }

                    if (Checkbox1MaterialesConstruccion1.Checked == true)
                    {
                        nuevoEquipamientoMaterial.MaterialesMetal = 1;
                    }
                    else { nuevoEquipamientoMaterial.MaterialesMetal = 0; }


                    nuevoEquipamientoPantalla.IdEquipamiento = nuevoEquipamiento.IdEquipamiento;

                    if (CheckboxPantallasCortaVientos.Checked == true)
                    {
                        nuevoEquipamientoPantalla.PantallasCortaViento = 1;
                    }
                    else { nuevoEquipamientoPantalla.PantallasCortaViento = 0; }

                    if (CheckboxPantallasReflectivasRefractivas.Checked == true)
                    {
                        nuevoEquipamientoPantalla.PantallasReflectivasRefractivas = 1;
                    }
                    else { nuevoEquipamientoPantalla.PantallasReflectivasRefractivas = 0; }

                    nuevoEquipamientoPlastico.IdEquipamiento = nuevoEquipamiento.IdEquipamiento;

                    if (CheckboxPlasticosClaros.Checked == true)
                    {
                        nuevoEquipamientoPlastico.PlasticosClaros = 1;
                    }
                    else { nuevoEquipamientoPlastico.PlasticosClaros = 0; }

                    if (CheckboxPlasticosPigmentados.Checked == true)
                    {
                        nuevoEquipamientoPlastico.PlasticosPigmentados = 1;
                    }
                    else { nuevoEquipamientoPlastico.PlasticosPigmentados = 0; }


                    nuevoEquipamientoSistema.IdEquipamiento = nuevoEquipamiento.IdEquipamiento;

                    if (CheckboxSistemasRecirculacionSoluciones.Checked == true)
                    {
                        nuevoEquipamientoSistema.SistemaRecirculacionSoluciones = 1;
                    }
                    else { nuevoEquipamientoSistema.SistemaRecirculacionSoluciones = 0; }

                    if (CheckboxSistemasCalefaccionRefrigeracionInvernadero.Checked == true)
                    {
                        nuevoEquipamientoSistema.SistemasCalefaccionRefrigeracion = 1;
                    }
                    else { nuevoEquipamientoSistema.SistemasCalefaccionRefrigeracion = 0; }

                    //Actualizar
                    nuevoEquipamientoBandeja.Actualizar();
                    nuevoEquipamientoEquipo.Actualizar();
                    nuevoEquipamientoMalla.Actualizar();
                    nuevoEquipamientoMaterial.Actualizar();
                    nuevoEquipamientoPantalla.Actualizar();
                    nuevoEquipamientoSistema.Actualizar();
                    nuevoEquipamientoPlastico.Actualizar();
                }
                vOtroEquipamientoError = false;

                //Response.RedirectPermanent("formularioProduccionPoscosecha.aspx?idConsecutivo=" + valorIdConsecutivo + "&userName=" + valorUser);
                valorIdConsecutivo = (string)Session["consecutivoSesion"];
                valorUser = (string)Session["userName"];
                Session["banderaImplementacion"] = true;
            }
            else
            {
                //INSERTAR UNA NUEVA IMPLEMENTACION
                if (vOtroImplementacionError)
                {
                }
                else
                {
                    nuevaImplementacion.Insertar();
                    vOtroImplementacionError = false;
                }

                nuevoEquipamiento.IdEmpresa = Int32.Parse(idActual);

                if (CheckboxAbanicosVentiladores.Checked == true)
                {
                    nuevoEquipamiento.AbanicosVentiladores = 1;
                }
                else { nuevoEquipamiento.AbanicosVentiladores = 0; }

                if (CheckboxAnclajesSimilares.Checked == true)
                {
                    nuevoEquipamiento.Anclajes = 1;
                }
                else { nuevoEquipamiento.Anclajes = 0; }

                if (CheckboxCablesTensoresSoporte.Checked == true)
                {
                    nuevoEquipamiento.CablesTensoresSoporte = 1;
                }
                else { nuevoEquipamiento.CablesTensoresSoporte = 0; }

                if (CheckboxCanaletasMacetasCultivo.Checked == true)
                {
                    nuevoEquipamiento.CanaletasMesas = 1;
                }
                else { nuevoEquipamiento.CanaletasMesas = 0; }

                if (CheckboxCobertoresPiso.Checked == true)
                {
                    nuevoEquipamiento.CobertoresPiso = 1;
                }
                else { nuevoEquipamiento.CobertoresPiso = 0; }

                if (CheckboxComputoProgramasEspecializados.Checked == true)
                {
                    nuevoEquipamiento.ComputoEspecifico = 1;
                }
                else { nuevoEquipamiento.ComputoEspecifico = 0; }

                if (CheckboxEmisoresCO2.Checked == true)
                {
                    nuevoEquipamiento.EmosoresCO2 = 1;
                }
                else { nuevoEquipamiento.EmosoresCO2 = 0; }

                if (CheckboxEstacionesMeteorologicas.Checked == true)
                {
                    nuevoEquipamiento.EstacionesMeteorologicas = 1;
                }
                else { nuevoEquipamiento.EstacionesMeteorologicas = 0; }

                if (CheckboxEstructuraSoporteCultivos.Checked == true)
                {
                    nuevoEquipamiento.EstructurasSoporteCultivo = 1;
                }
                else { nuevoEquipamiento.EstructurasSoporteCultivo = 0; }

                if (CheckboxGeomembranas.Checked == true)
                {
                    nuevoEquipamiento.Geomembranas = 1;
                }
                else { nuevoEquipamiento.Geomembranas = 0; }

                if (CheckboxHumedecimientoAmbiente.Checked == true)
                {
                    nuevoEquipamiento.HumedecimientoAmbiente = 1;
                }
                else { nuevoEquipamiento.HumedecimientoAmbiente = 0; }

                if (CheckboxIluminacionInterna.Checked == true)
                {
                    nuevoEquipamiento.IluminacionInterna = 1;
                }
                else { nuevoEquipamiento.IluminacionInterna = 0; }

                if (CheckboxMotoresBarrasTransmision.Checked == true)
                {
                    nuevoEquipamiento.MotoresBarrasTransmision = 1;
                }
                else { nuevoEquipamiento.MotoresBarrasTransmision = 0; }

                if (CheckboxNebulizadores.Checked == true)
                {
                    nuevoEquipamiento.Nebulizadores = 1;
                }
                else { nuevoEquipamiento.Nebulizadores = 0; }

                if (CheckboxOtroEquipoCientificoEspecializado.Checked == true)
                {
                    nuevoEquipamiento.EquipoCientificoEspecializado = 1;
                }
                else { nuevoEquipamiento.EquipoCientificoEspecializado = 0; }

                if (CheckboxSujetadoresMaterialesCerramiento.Checked == true)
                {
                    nuevoEquipamiento.SugetadoresCerramiento = 1;
                }
                else { nuevoEquipamiento.SugetadoresCerramiento = 0; }

                if (CheckboxTanquesReservoriosAgua.Checked == true)
                {
                    nuevoEquipamiento.TanquesAgua = 1;
                }
                else { nuevoEquipamiento.TanquesAgua = 0; }

                if (CheckboxOtroEquipamiento.Checked == true)
                {

                    if (TextboxOtroEquipamiento.Text.Equals(""))
                    {
                        vOtroEquipamientoError = true;
                        Response.Write("<script>alert('Especifique el dato para la opción Otro en Equipamiento');</script>");
                    }
                    else { nuevoEquipamiento.Otro = TextboxOtroEquipamiento.Text.ToString(); }
                }
                else
                {
                    if (TextboxOtroEquipamiento.Text != "")
                    {
                        nuevoEquipamiento.Otro = TextboxOtroEquipamiento.Text.ToString();
                    }
                    else
                    { nuevoEquipamiento.Otro = "0"; }
                }


                //Insertar
                if (vOtroEquipamientoError)
                {
                }
                else
                {
                    nuevoEquipamiento.Insertar();

                    nuevoEquipamientoBandeja.IdEquipamiento = nuevoEquipamiento.IdEquipamiento;

                    if (CheckboxBandejaCultivo.Checked == true)
                    {
                        nuevoEquipamientoBandeja.BandejaCultivo = 1;
                    }
                    else { nuevoEquipamientoBandeja.BandejaCultivo = 0; }

                    nuevoEquipamientoEquipo.IdEquipamiento = nuevoEquipamiento.IdEquipamiento;

                    if (CheckboxEquiposBombeoAgua.Checked == true)
                    {
                        nuevoEquipamientoEquipo.EquipoBondeoAgua = 1;
                    }
                    else { nuevoEquipamientoEquipo.EquipoBondeoAgua = 0; }

                    if (CheckboxEquiposControlAutomatismos.Checked == true)
                    {
                        nuevoEquipamientoEquipo.EquipoControlAutomatismos = 1;
                    }
                    else { nuevoEquipamientoEquipo.EquipoControlAutomatismos = 0; }

                    if (CheckboxEquiposMonitoreoAguaAire.Checked == true)
                    {
                        nuevoEquipamientoEquipo.EquipoMonitoreoAguaAire = 1;
                    }
                    else { nuevoEquipamientoEquipo.EquipoMonitoreoAguaAire = 0; }

                    if (CheckboxEquiposMonitoreoControlPlagas.Checked == true)
                    {
                        nuevoEquipamientoEquipo.EquipoMonitoreoPlagas = 1;
                    }
                    else { nuevoEquipamientoEquipo.EquipoMonitoreoPlagas = 0; }

                    if (CheckboxEquiposSaludSeguridadOcupacionel.Checked == true)
                    {
                        nuevoEquipamientoEquipo.EquipoSaludSeguridadOcupacional = 1;
                    }
                    else { nuevoEquipamientoEquipo.EquipoSaludSeguridadOcupacional = 0; }

                    if (CheckboxEquiposPortatilesVariablesAmbientales.Checked == true)
                    {
                        nuevoEquipamientoEquipo.EquipoPortatiles = 1;
                    }
                    else { nuevoEquipamientoEquipo.EquipoPortatiles = 0; }

                    if (CheckboxEquiposPoscosechaGestionCalidad.Checked == true)
                    {
                        nuevoEquipamientoEquipo.EquipoPoscosecha = 1;
                    }
                    else { nuevoEquipamientoEquipo.EquipoPoscosecha = 0; }

                    if (CheckboxEquiposSuministrosRiegoFertiIrrigacion.Checked == true)
                    {
                        nuevoEquipamientoEquipo.EquipoRiegoFertiIrrigacion = 1;
                    }
                    else { nuevoEquipamientoEquipo.EquipoRiegoFertiIrrigacion = 0; }


                    nuevoEquipamientoMalla.IdEquipamiento = nuevoEquipamiento.IdEquipamiento;

                    if (CheckboxMallaAntiAve.Checked == true)
                    {
                        nuevoEquipamientoMalla.MallasAntiAves = 1;
                    }
                    else { nuevoEquipamientoMalla.MallasAntiAves = 0; }

                    if (CheckboxMallaAntiInsecto.Checked == true)
                    {
                        nuevoEquipamientoMalla.MallasAntiInsectos = 1;
                    }
                    else { nuevoEquipamientoMalla.MallasAntiInsectos = 0; }

                    if (CheckboxMallaSombreo.Checked == true)
                    {
                        nuevoEquipamientoMalla.MallasSombreo = 1;
                    }
                    else { nuevoEquipamientoMalla.MallasSombreo = 0; }


                    nuevoEquipamientoMaterial.IdEquipamiento = nuevoEquipamiento.IdEquipamiento;

                    if (CheckboxMaterialesConstruccion.Checked == true)
                    {
                        nuevoEquipamientoMaterial.MaterialesMadera = 1;
                    }
                    else { nuevoEquipamientoMaterial.MaterialesMadera = 0; }

                    if (Checkbox1MaterialesConstruccion1.Checked == true)
                    {
                        nuevoEquipamientoMaterial.MaterialesMetal = 1;
                    }
                    else { nuevoEquipamientoMaterial.MaterialesMetal = 0; }


                    nuevoEquipamientoPantalla.IdEquipamiento = nuevoEquipamiento.IdEquipamiento;

                    if (CheckboxPantallasCortaVientos.Checked == true)
                    {
                        nuevoEquipamientoPantalla.PantallasCortaViento = 1;
                    }
                    else { nuevoEquipamientoPantalla.PantallasCortaViento = 0; }

                    if (CheckboxPantallasReflectivasRefractivas.Checked == true)
                    {
                        nuevoEquipamientoPantalla.PantallasReflectivasRefractivas = 1;
                    }
                    else { nuevoEquipamientoPantalla.PantallasReflectivasRefractivas = 0; }

                    nuevoEquipamientoPlastico.IdEquipamiento = nuevoEquipamiento.IdEquipamiento;

                    if (CheckboxPlasticosClaros.Checked == true)
                    {
                        nuevoEquipamientoPlastico.PlasticosClaros = 1;
                    }
                    else { nuevoEquipamientoPlastico.PlasticosClaros = 0; }

                    if (CheckboxPlasticosPigmentados.Checked == true)
                    {
                        nuevoEquipamientoPlastico.PlasticosPigmentados = 1;
                    }
                    else { nuevoEquipamientoPlastico.PlasticosPigmentados = 0; }


                    nuevoEquipamientoSistema.IdEquipamiento = nuevoEquipamiento.IdEquipamiento;

                    if (CheckboxSistemasRecirculacionSoluciones.Checked == true)
                    {
                        nuevoEquipamientoSistema.SistemaRecirculacionSoluciones = 1;
                    }
                    else { nuevoEquipamientoSistema.SistemaRecirculacionSoluciones = 0; }

                    if (CheckboxSistemasCalefaccionRefrigeracionInvernadero.Checked == true)
                    {
                        nuevoEquipamientoSistema.SistemasCalefaccionRefrigeracion = 1;
                    }
                    else { nuevoEquipamientoSistema.SistemasCalefaccionRefrigeracion = 0; }

                    //Insertar
                    nuevoEquipamientoBandeja.Insertar();
                    nuevoEquipamientoEquipo.Insertar();
                    nuevoEquipamientoMalla.Insertar();
                    nuevoEquipamientoMaterial.Insertar();
                    nuevoEquipamientoPantalla.Insertar();
                    nuevoEquipamientoSistema.Insertar();
                    nuevoEquipamientoPlastico.Insertar();

                    vOtroEquipamientoError = false;
                    //Response.RedirectPermanent("formularioProduccionPoscosecha.aspx?idConsecutivo=" + valorIdConsecutivo + "&userName=" + valorUser);
                    valorIdConsecutivo = (string)Session["consecutivoSesion"];
                    valorUser = (string)Session["userName"];
                    Session["banderaImplementacion"] = true;                    
                }
            }
        }//Finaliza guardar

    }
}